﻿using System.Collections.Generic;

namespace RbmlVisualizer.Data.Link
{
    public interface ILink
    {
        IEntity EntityOne { get; set; }
        IEntity EntityTwo { get; set; }
        
        LinkEndType LinkEndType1 { get; set; }
        LinkEndType LinkEndType2 { get; set; }
        
        string Label { get; set; }
        string LinkEndLabel1 { get; set; }
        string LinkEndLabel2 { get; set; }
        
        Multiplicity MultiplicityOne { get; set; }
        Multiplicity MultiplicityTwo { get; set; }

        bool HasLinkEndType(LinkEndType linkEndType);
        bool HasAnyLinkEndType(IEnumerable<LinkEndType> linkEndTypes);
    }
}
